package com.youlai.boot.factory.model.entity;

import lombok.Getter;
import lombok.Setter;

import java.time.LocalDate;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableName;
import com.youlai.boot.common.base.BaseEntity;

/**
 * 服装厂用户实体对象
 *
 * @author youlaitech
 * @since 2025-07-14 19:43
 */
@Getter
@Setter
@TableName("users")
public class Users extends BaseEntity {

    private static final long serialVersionUID = 1L;

    private Integer userId;
    /**
     * 所属服装厂ID，关联到工厂表
     */
    private Integer factoryId;
    /**
     * 用户名，用于登录
     */
    private String username;
    /**
     * 加密后的密码
     */
    private String passwordHash;
    /**
     * 真实姓名
     */
    private String realName;
    /**
     * 联系电话
     */
    private String phone;
    /**
     * 电子邮箱
     */
    private String email;
    /**
     * 用户角色：worker-普通员工, supervisor-组长/主管, manager-厂长, admin-系统管理员
     */
    private String role;
    /**
     * 所属部门，如裁剪部、缝制部、包装部等
     */
    private String department;
    /**
     * 职位
     */
    private String position;
    /**
     * 入职日期
     */
    private LocalDate hireDate;
    /**
     * 账号状态：0-禁用，1-启用
     */
    private Integer status;
    /**
     * 登录时ip所在地
     */
    private String loginIpAddress;
    /**
     * 登录时ip 
     */
    private String loginIp;
    /**
     * 最后登录时间
     */
    private LocalDateTime lastLogin;
    /**
     * 创建时间
     */
    private LocalDateTime createdAt;
    /**
     * 更新时间
     */
    private LocalDateTime updatedAt;
    /**
     * 创建人ID
     */
    private Integer createdBy;
    /**
     * 备注信息
     */
    private String notes;
}
